Оператор логічного присвоєння

Оператор логічного присвоєння (Logical assignment operators) поєднує логічні операції (&&, ||, ??) з присвоєнням =. Оператор логічного присвоєння був доданий у специфікації ES2021.

Якщо браузер не підтримує ES2021 тоді буде виникати синтаксична помилка.

Оператор присвоєнняАналогічноПризначає лише, якщо a є
a &&= ba && (a = b)Істина
a ||= ba || (a = b)Не істина
a ??= ba ?? (a = b)Нульовий

&&=

Присвоєння виконується тоді коли a є істиною (true).

&&=аналог
var a = 1, b=2; a&&=b; alert(a); var a=1, b=2; if( a ) a=b; alert(a);
var a=1, b=2; a&&(a=b); alert(a);

||=

Присвоєння виконується тоді коли a є не істиною (false).

||=аналог
var a = 1, b=2; a||=b; alert(a); var a=1, b=2; a || (a = y); alert(a);

??=

Присвоєння виконується тоді коли a є null або undefined.

??=аналог
var a = 1, b=2; a??=b; alert(a); var a=1, b=2; a ?? (a = b); alert(a);